package com.tiancheng.trade.order.vo.api.res;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @Author: likailun
 * @Description:
 * @Date: create in 2023/2/9 16:46
 */
@Data
public class OrderDiscountInfoVO implements Serializable {
    /**
     * 主订单号
     */
    private String orderId;
    /**
     * 主订单名称
     */
    private String orderName;
    /**
     * 订单状态
     */
    private String orderStatus;
    /**
     * 支付状态
     */
    private String payStatus;
    /**
     * 订单应收金额
     */
    private Integer orderAmount;
    /**
     * 订单支付总金额
     */
    private Integer payAmount;
    /**
     * 子订单个数
     */
    private Integer subOrderCnt;
    /**
     * 下单时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    protected LocalDateTime createdDt;
    /**
     * 支付时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime payTime;
    /**
     * 优惠金额
     */
    private Integer discount;

    /**
     * 优惠明细
     */
    private List<DiscountDetailVO> discountDetails;

    @Data
    @AllArgsConstructor
    public static class DiscountDetailVO {
        /**
         * 优惠类型
         */
        private String discountType;
        /**
         * 优惠类型名称
         */
        private String discountTypeName;
        /**
         * 优惠名称
         */
        private String discountName;
        /**
         * 优惠金额
         */
        private Integer discount;
        /**
         * 备注：优惠券码、折扣、云币数量、抵扣金额
         */
        private String remarks;
    }
}
